// ============================== 导入依赖 ============================== //

import API from './API'

// ============================== 导出异步调用 ============================== //

export default {
  // —————————————————————————————— 列表 —————————————————————————————— //

  async remoteList({ state, rootState }) {
    if (!rootState.one.id) return [0, []]

    const [num, arr] = await API.getList({ ...state.param, accessControlPointId: rootState.one.id })
    return [num, transList(arr, rootState)]
  },

  // —————————————————————————————— 提交 —————————————————————————————— //

  async remoteSubmit({ rootState }) {
    const msg = await API.sync(rootState.one)
    return msg
  },
}

// ============================== 转换方法 ============================== //

const transList = (arr, rootState) => {
  rootState.one.subDeviceIds = arr.map((item) => item.deviceId)

  arr.forEach((item) => {
    item.id = item.deviceId
    item.areaId = item.regionId
    item.areaName = item.regionName
  })
  return arr
}
